home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 98 / Skunkware 98.iso / src / interp / perl5.005.tar.gz / perl5.005.tar / perl5.005 / mpeix / nm < prev    next >
Text File  |  1998-07-14  |  940b  |  34 lines

  1. #!/bin/sh
  2.  
  3. # MPE doesn't have a native nm, and the gcc nm isn't quite fully functional.
  4. #
  5. # If Perl Configure is calling us, then use the native linker to extract the
  6. # symbol table and reformat it into something nm-like.
  7. #
  8. # Else it must be gcc calling us during the final link phase, so call gcc nm.
  9.  
  10. if [ "$1" != "-configperl" ]; then
  11.   # Oops, the caller must be expecting gcc nm.  Give it to them.
  12.   /usr/local/bin/nm $@
  13.   exit $?
  14. fi
  15.  
  16. case $2 in
  17.   *.a) LIST="LISTRL RL=$2;DATA;ENTRYSYM" ;;
  18.   *.sl) LIST="LISTXL XL=$2;DATA;ENTRYSYM" ;;
  19.   *) exit 0 ;;
  20. esac
  21.  
  22. # I wanted to pipe this into awk, but it fell victim to a known pipe/streams
  23. # bug on my multiprocessor machine.
  24.  
  25. callci xeq linkedit.pub.sys \"$LIST\" >/tmp/nm.$$
  26.  
  27. awk '\
  28.     / data  univ / { printf "%-20s|%10s|%-6s|%-7s|%s\n",$1,$5,"extern","data","?"} \
  29.     / entry univ / { printf "%-20s|%10s|%-6s|%-7s|%s\n",$1,$7,"extern","entry","?"}' /tmp/nm.$$
  30.  
  31. rm -f /tmp/nm.$$
  32.  
  33. exit 0
  34.